package com.ruoyi.electronicFence.domain;

import java.math.BigInteger;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * 设备状态对象 t_device_status
 *
 * @author sxygsj
 * @date 2024-05-17
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class TDeviceStatus
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 设备类型 */
    @Excel(name = "设备类型")
    private String deviceId;

    /** 设备类型 */
    @Excel(name = "设备类型")
    private String deviceType;

    /** 设备名称 */
    @Excel(name = "设备名称")
    private String deviceName;

    /** 设备IP */
    @Excel(name = "设备IP")
    private String deviceIp;

    /** 设备状态 */
    @Excel(name = "设备状态")
    private String deviceStatus;

    /** 设备状态持续时间 */
//    @JsonFormat(pattern = "yyyy-MM-dd")
//    @Excel(name = "设备状态持续时间", width = 30, dateFormat = "yyyy-MM-dd")
    private BigInteger statusDuration;
    /** 控制器编码 */
    @Excel(name = "控制器编码")
    private String controllerCode;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "状态变更开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime statusStartTime;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "状态变更结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime statusEndTime;

    private String durationDis;

    /** 控制器编码 */
    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "控制器编码")
    private LocalDateTime updateTime;

    /** 场所编码 */
    @Excel(name = "场所编码")
    private String equipmentId;

    /** 传输协议 */
    @Excel(name = "传输协议")
    private String  transportProtocol;

}
